package Observers;

import java.util.ArrayList;
import java.util.List;

import tadp.tp.domain.Fecha;
import tadp.tp.domain.OrganizadorDeReuniones;



public class ObserverBuilder {
	
	private List<Observador> observadores= new ArrayList<Observador>();

	public ObserverBuilder ObservadorPocoPorcentaje(Double unPorcentaje){
		this.observadores.add(new CanceladorPorPorcentaje(unPorcentaje));
		return this;
	}
	
	public ObserverBuilder observadorRecursoObligatorioOOpcional(){
		this.observadores.add(new CancelarPorRecursoObligatorio());
		return this;
	}
//	public ObserverBuilder RecursoOpcionalDeBaja (){
//		this.observadores.add(new RecursoOpcionalDeBaja());
//		return this;
//	}	no hace falta :P
	
	public ObserverBuilder replanificador(Fecha fecha){
		this.observadores.add(new Replanificador(fecha));
		return this;
	}
	public List<Observador>	build(){
		return this.observadores;
	}

	public ObserverBuilder observadorCriterioAsociadoDeSeleccion(String string, OrganizadorDeReuniones organizador) {
		this.observadores.add(new CriterioAsociadoDeSeleccion(string,organizador));
	return this;
	}
}
	
